I don't need to test my programs. I have an error-correcting modem.

Legacy:Making Screenshots

From Unreal Wiki, The Unreal Engine Documentation Site
Jump to: navigation, search

Taking a Screenshot in Unreal Tournament[edit]

Play your map in Unreal Tournament.

Set the scene[edit]

Depending on whether you want images for the map thumbnail or action shots, bots are a consideration:

  • To remove bots from the game, enter killpawns in the console.
  • To freeze bots in a good position, allowing you to move around and try different angles of shot, enter playersonly in the console.

Clear the View[edit]

To get a clear view, either set "Play as Spectator" under Player Options before starting the practise session, or remove the HUD manually.

  1. To remove the HUD, do one of the following:
    • Press the - (minus) key until your HUD completely disappears.
    • Set "Play as Spectator" under Player Options before starting the practice session
    • You can also remove the HUD just temporarily without changing your configuration by entering the following two console commands:
        set PlayerPawn HUDType None

set PlayerPawn myHUD None

    • Or use the togglescreenshotmode command at the console to toggle all HUDs on and off.
  1. To remove the first-person view of your weapon, do one of the following, enter killall Inventory in the console, or SetHand Hidden. (note: to put the hand back in its normal place afterwards use sethand right).
  2. You might also want to type in fly to fly around to get the best view for a shot.

Resolution & brightness[edit]

To get your sreen in the perfect resolution to avoid excessive editing later go to windowed mode by hitting ALT-ENTER or use the Menu. Next go to the console and type the following command:

SETRES 256x256

Adjust the brightness with the F11 key. Press F9 to create a snapshot .bmp file of the screen in your System directory: all such files are named Shot0000.bmp, Shot0001.bmp and so on. Note that Unreal Tournament stops taking screenshots when you reach Shot0255.bmp despite the four-digit number in the file name, so be sure that you make room for new screenshots in time by deleting old ones.

Processing[edit]

Depending on what you want to do with your screenshots, here is some general advice:

  • By any means, gamma-correct them. Screenshots appear much darker outside the game than in the game, so unless you want the viewers of your screenshots to get an unhealthy tan due to having had to turn their monitor brightness way up, lighten the shots up a bit.
  • Level correction is often a good idea too. Note that Photoshop's Auto levels option tends to make your shot look like badly colourized Laurel and Hardy films.
  • Cropping the screenshot if often a good idea and can create a more striking image. Save your original and try different possibilities. Another way is to add a layer in Photoshop that is all black apart from a transparent window, and drag this around the image.
  • If you want to post them in a forum, scale them down (640x480 pixels at most) and convert them to .jpg using your favorite image editing program. Nobody likes having to use the horizontal scrollbar to view your screenshots completely.
  • For show-off screenshots, enter the map in spectator mode so your HUD and your weapon don't appear on the shots. Besides, you'll be able to get much better camera angles that way.

There's a utility which performs some of the screenshot processing here: http://www.willemssoft.be/english/index1024normal.html WARNING: this page annoyingly enlarges the window.

Screenshot in UnrealEd =[edit]

You can maximize a viewport to get a larger picture; see Console Bar. Hit PrtSc on your keyboard. Switch to your favourite bitmap image editor (PhotoShop, PaintShopPro etc) and paste.

Related Topics[edit]

Discussion[edit]

Balu: Is there a way to create movies? E.g. to create an animated gif showing how an effect looks like.

Foxpaw: There are programs that you can use to compile an animated gif from a series of bitmaps, I don't have a link handy. The only problem with that is that you would need to take screenshots rapidly and evenly, unless you wrote a class especially for the task that would, for instance, advance a frame of the animation/effect/whatever every time you triggered it by some means. ( like shooting it ) Plus that sounds like something resembling hard work.

Balu: I know those programs, but I don't think you can "hit" the right frames using screenshots. I was thinking of image like the ones in the emitter-examples on UDN: http://udn.epicgames.com/pub/Content/EmittersTutorial/acceleration.gif

ZxAnPhOrIaN: Do you want it for a map or just a stand-alone picture?

Balu: Standalone - to create some example pics for this wiki e.g.

ZxAnPhOrIaN: Ok, try the demo record console command in the game and try to find a demo recording converter (to gif or avi).

Balu: I've just looked around for ways to do so, but only found MovieUnreal++ - which is for UT only though. Does anyone have something like this for UT2003?

Foxpaw: Like I said, if you have trouble hitting the right frames you could write a class that would advance the frame each time it was triggered, so for instance it could monitor the player's bExtra0, which isn't used as far as I cn tell but can be bound to a key. You could then have it advance one frame each time it was triggered. Alternately I believe there is generic video capture software that you could use while running UT, but I don't have any specific examples of one.

Balu: Anyone willing to undertake the task of doing the you-part of Foxpaws idea? I am truly not skilled enough to do so. I'd love to analyze the code though and willing to write a doc for the wiki (if I understand a word ;)

EntropicLqd: Could't you ensure you hit the right frames by setting the game speed to something really low and then thumping the f9 key repeatedly?

Balu: That might be possible, but it's more a workaround... I also just found Capturing_Unreal_Video where this discussion should be taken I guess...

ZxAnPhOrIaN: In an ini (i think UT2003), there is a variable called something like framerate or framespersecond, set it really low, and don't forget to change it back!

Foxpaw: Just skimming over this page again, the code to make something that would take screenshots repeatedly some distance apart would look something like this:

class TimedScreenshots extends Actor;
 
var float FPS;
var float NextShotTime;
 
function PostBeginPlay()
{
  NextShotTime = Level.TimeSeconds;
}
 
function Tick(float Delta)
{
  while (Level.TimeSeconds >= NextShotTime)
  {
    ConsoleCommand("SShot");
    NextShotTime += 1/FPS;
  }
}
 
defaultproperties
{
  bHidden=true
  FPS=10
}

Then you could bind a key to "Summon WhateverPackage.TimedScreenshots" and another key to "Killall TimedScreenshots".

To get the best results if you want a high FPS for your video, you could set the timedilation low and the FPS in that class low. For 30FPS for instance, you could set the FPS in the class to 3 and "Set LevelInfo TimeDilation 0.1" on the console. This probrably wouldn't be of much help unless your computer can't put out as many FPS as you want the video to have at the detail settings you want for the video.

DarthDevilous: From the current article:

Unreal Tournament stops taking screenshots when you reach Shot0255.bmp

This doesn't seem to be the case in UT2004, I am currently at Shot00283. Also my Screenshots end up in the /ScreenShots subdirectory. Is this functionality new in UT2004 or what? (and could someone update the article appropriatly)

Xian: I assume that is because you have 2 zeros. It might go up to 9999 but I am not sure.